//
//  MyStatusCell.swift
//  WeiBlog
//
//  Created by apple on 15/10/22.
//  Copyright © 2015年 xiang. All rights reserved.
//

import UIKit

class MyStatusCell: StatusCell {
    /**
        其实下面的的init不用重写,在调用时直接调用父类的构造函数,但是注意调用者是自己,调用的setUI也是自己重写的setUI方法
    */
//    override init(style: UITableViewCellStyle, reuseIdentifier: String?) {
//        super.init(style: .Default, reuseIdentifier: MyCellID)
//    }
//
//    required init?(coder aDecoder: NSCoder) {
//        fatalError("init(coder:) has not been implemented")
//    }
    
    override var viewModel:StatusViewModel?{
        didSet{
            
            
            //判断picturesView.bounds.height是否为0,然后更新顶部的布局(每次都要判断是因为有重用)
            let offset = viewModel?.imageURLs.count == 0 ? 0 : margin
            
            picturesView.snp_updateConstraints{ (make) -> Void in
                make.top.equalTo(contentLabel.snp_bottom).offset(offset)
            }
            
            //下面这两句主要是为了再返回高度时,强制更新布局先计算出一个高度
            contentView.layoutIfNeeded()
            rowHeight = CGRectGetMaxY(bottomView.frame)
        }
    }
}

// MARK:设置界面(只设置和父类不同的地方)
extension MyStatusCell
{
    override func setUI() {
        super.setUI()
        
        picturesView.snp_makeConstraints { (make) -> Void in
            make.top.equalTo(contentLabel.snp_bottom).offset(margin)
            make.width.equalTo(ScreenWidth - 2 * margin)
            make.left.equalTo(contentLabel.snp_left)
            make.height.equalTo(320)
        }
    }
    
}
